package com.wuzhipeng.heart.user.service;

import com.wuzhipeng.heart.user.dao.entity.Appointments;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wuzhipeng.heart.user.dto.request.*;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author wuzhipeng
 * @since 2024-12-25
 */
public interface IAppointmentsService extends IService<Appointments> {

    List<String> getAvailableTime(TherapistAvailableTimeDTO therapistAvailableTimeDTO);

    void addAppointment(MakeAppointmentsDTO makeAppointmentsDTO);

    List<UserAppointmentsDTO> getUserAppointments();

    void cancelAppointment(Long id);

    StatsDTO getTherapistStats();

    List<TodayAppointmentsDTO> getTherapistScheduleToday();

    List<ScheduleDTO> getTherapistSchedule(String startDate);

    void addTherapistSchedule(ScheduleDTO scheduleDTO);

    List<AppointmentRecordsDTO> getTherapistRecords();

    void deleteExpiredAppointments(List<Integer> ids);

    List<Appointments> getAllAppointmentsByDate();
}
